<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8">
<!-- designer-manual.qdoc -->
  <title>UI文件格式 | Qt Designer 手册</title>
  <link rel="stylesheet" type="text/css" href="style/offline-simple.css" />
  <script type="text/javascript">
    document.getElementsByTagName("link").item(0).setAttribute("href", "style/offline.css");
    // loading style sheet breaks anchors that were jumped to before
    // so force jumping to anchor again
    setTimeout(function() {
        var anchor = location.hash;
        // need to jump to different anchor first (e.g. none)
        location.hash = "#";
        setTimeout(function() {
            location.hash = anchor;
        }, 0);
    }, 0);
  </script>
</head>
<body>
<div class="header" id="qtdocheader">
  <div class="main">
    <div class="main-rounded">
      <div class="navigationbar">
        <table><tr>
<td ><a href="../qtdoc/index.html">Qt 5.14</a></td><td ><a href="qtdesigner-manual.html">Qt Designer 手册</a></td><td >UI文件格式</td></tr></table><table class="buildversion"><tr>
<td id="buildversion" width="100%" align="right"><a href="qtdesigner-manual.html">Qt 5.14.2 参考文档</a></td>
        </tr></table>
      </div>
    </div>
<div class="content">
<div class="line">
<div class="content mainContent">
  <link rel="prev" href="designer-creating-custom-widgets-extensions.html" />
<p class="naviNextPrevious headerNavi">
<a class="prevPage" href="designer-creating-custom-widgets-extensions.html">创建自定义小部件(Widget)扩展</a>
</p><p/>
<div class="sidebar"><div class="sidebar-content" id="sidebar-content"></div></div>
<h1 class="title">UI文件格式</h1>
<span class="subtitle"></span>
<!-- $$$designer-ui-file-format.html-description -->
<div class="descr"> <a name="details"></a>
<p><i>Qt Designer</i> 使用的 <code>UI</code> 文件格式由下面提供的 <a href="http://www.w3.org/XML/Schema">XML 模式</a> 描述，为了方便起见，我们将其包含进来。
请注意，在未来的Qt版本中，格式可能会改变。</p>
<pre class="cpp">

  &lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ?&gt;
  &lt;xs:schema xmlns:xs=&quot;http://www.w3.org/2001/XMLSchema&quot;&gt;

          &lt;xs:element name=&quot;ui&quot; type=&quot;UI&quot;/&gt;

          &lt;xs:complexType name=&quot;UI&quot;&gt;
                  &lt;xs:all&gt;
                          &lt;xs:element name=&quot;author&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;comment&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;exportmacro&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;class&quot; type=&quot;xs:string&quot; /&gt;
                          &lt;xs:element name=&quot;widget&quot; type=&quot;Widget&quot; /&gt;
                          &lt;xs:element name=&quot;layoutdefault&quot; type=&quot;LayoutDefault&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;layoutfunction&quot; type=&quot;LayoutFunction&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;pixmapfunction&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;customwidgets&quot; type=&quot;CustomWidgets&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;tabstops&quot; type=&quot;TabStops&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;images&quot; use=&quot;deprecated&quot; /&gt;
                          &lt;xs:element name=&quot;includes&quot; type=&quot;Includes&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;resources&quot; type=&quot;Resources&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;connections&quot; type=&quot;Connections&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;designerdata&quot; type=&quot;DesignerData&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;slots&quot; type=&quot;Slots&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;buttongroups&quot; type=&quot;ButtonGroups&quot; minOccurs=&quot;0&quot; /&gt;
                  &lt;/xs:all&gt;
                  &lt;xs:attribute name=&quot;version&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:attribute name=&quot;language&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:attribute name=&quot;displayname&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:attribute name=&quot;idbasedtr&quot; type=&quot;xs:boolean&quot; /&gt;
                  &lt;xs:attribute name=&quot;connectslotsbyname&quot; type=&quot;xs:boolean&quot; /&gt;
  &lt;!-- Legacy attribute generated by uic3 --&gt;
                  &lt;xs:attribute name=&quot;stdsetdef&quot; type=&quot;xs:integer&quot; /&gt;
  &lt;!-- Legacy attribute generated by the VS integration --&gt;
                  &lt;xs:attribute name=&quot;stdSetDef&quot; type=&quot;xs:integer&quot; /&gt;
          &lt;/xs:complexType&gt;

  &lt;!-- include begin --&gt;
          &lt;xs:complexType name=&quot;Includes&quot;&gt;
              &lt;xs:sequence&gt;
                          &lt;xs:element name=&quot;include&quot; type=&quot;Include&quot; maxOccurs=&quot;unbounded&quot; /&gt;
              &lt;/xs:sequence&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;Include&quot; mixed=&quot;true&quot; &gt;
                  &lt;xs:attribute name=&quot;location&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:attribute name=&quot;impldecl&quot; type=&quot;xs:string&quot; /&gt;
          &lt;/xs:complexType&gt;
  &lt;!-- include end --&gt;

  &lt;!-- resource begin --&gt;
          &lt;xs:complexType name=&quot;Resources&quot;&gt;
              &lt;xs:sequence&gt;
                          &lt;xs:element name=&quot;include&quot; type=&quot;Resource&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
          &lt;/xs:sequence&gt;
                  &lt;xs:attribute name=&quot;name&quot; type=&quot;xs:string&quot; /&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;Resource&quot;&gt;
                  &lt;xs:attribute name=&quot;location&quot; type=&quot;xs:string&quot; /&gt;
          &lt;/xs:complexType&gt;
  &lt;!-- resource end --&gt;

  &lt;!-- actions begin --&gt;
          &lt;xs:complexType name=&quot;ActionGroup&quot;&gt;
                  &lt;xs:sequence maxOccurs=&quot;unbounded&quot;&gt;
                          &lt;xs:element name=&quot;action&quot; type=&quot;Action&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
                          &lt;xs:element name=&quot;actiongroup&quot; type=&quot;ActionGroup&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
                          &lt;xs:element name=&quot;property&quot; type=&quot;Property&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
                          &lt;xs:element name=&quot;attribute&quot; type=&quot;Property&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
                  &lt;/xs:sequence&gt;
                  &lt;xs:attribute name=&quot;name&quot; type=&quot;xs:string&quot; /&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;Action&quot;&gt;
                  &lt;xs:sequence maxOccurs=&quot;unbounded&quot; &gt;
                          &lt;xs:element name=&quot;property&quot; type=&quot;Property&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
                          &lt;xs:element name=&quot;attribute&quot; type=&quot;Property&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
                  &lt;/xs:sequence&gt;
                  &lt;xs:attribute name=&quot;name&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:attribute name=&quot;menu&quot; type=&quot;xs:string&quot; /&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;ActionRef&quot;&gt;
                  &lt;xs:attribute name=&quot;name&quot; type=&quot;xs:string&quot; /&gt;
          &lt;/xs:complexType&gt;
  &lt;!-- actions end --&gt;

  &lt;!-- button groups begin --&gt;
          &lt;xs:complexType name=&quot;ButtonGroup&quot;&gt;
                  &lt;xs:sequence maxOccurs=&quot;unbounded&quot;&gt;
                          &lt;xs:element name=&quot;property&quot; type=&quot;Property&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
                          &lt;xs:element name=&quot;attribute&quot; type=&quot;Property&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
                  &lt;/xs:sequence&gt;
                  &lt;xs:attribute name=&quot;name&quot; type=&quot;xs:string&quot; /&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;ButtonGroups&quot;&gt;
              &lt;xs:sequence&gt;
                          &lt;xs:element name=&quot;buttongroup&quot; type=&quot;ButtonGroup&quot; maxOccurs=&quot;unbounded&quot; /&gt;
          &lt;/xs:sequence&gt;
          &lt;/xs:complexType&gt;
  &lt;!--  button groups end --&gt;

  &lt;!-- custom widget support begin --&gt;
          &lt;xs:complexType name=&quot;CustomWidgets&quot;&gt;
              &lt;xs:sequence&gt;
                          &lt;xs:element name=&quot;customwidget&quot; type=&quot;CustomWidget&quot; maxOccurs=&quot;unbounded&quot; /&gt;
          &lt;/xs:sequence&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;Header&quot; mixed=&quot;true&quot; &gt;
                  &lt;xs:attribute name=&quot;location&quot; type=&quot;xs:string&quot; /&gt;  &lt;!-- local or global --&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;CustomWidget&quot;&gt;
                  &lt;xs:all&gt;
                          &lt;xs:element name=&quot;class&quot; type=&quot;xs:string&quot; /&gt;
                          &lt;xs:element name=&quot;extends&quot; type=&quot;xs:string&quot; /&gt;
                          &lt;xs:element name=&quot;header&quot; type=&quot;Header&quot; /&gt;
                          &lt;xs:element name=&quot;sizehint&quot; type=&quot;Size&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;addpagemethod&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;container&quot; type=&quot;xs:integer&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;sizepolicy&quot; use=&quot;deprecated&quot; /&gt;
                          &lt;xs:element name=&quot;pixmap&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;script&quot; use=&quot;deprecated&quot; /&gt;
                          &lt;xs:element name=&quot;properties&quot; use=&quot;deprecated&quot; /&gt;
                          &lt;xs:element name=&quot;slots&quot; type=&quot;Slots&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;propertyspecifications&quot; type=&quot;PropertySpecifications&quot; minOccurs=&quot;0&quot; /&gt;
                  &lt;/xs:all&gt;
          &lt;/xs:complexType&gt;

  &lt;!-- custom widget support end --&gt;

          &lt;xs:complexType name=&quot;LayoutDefault&quot;&gt;
                  &lt;xs:attribute name=&quot;spacing&quot; type=&quot;xs:integer&quot; /&gt;
                  &lt;xs:attribute name=&quot;margin&quot; type=&quot;xs:integer&quot; /&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;LayoutFunction&quot;&gt;
                  &lt;xs:attribute name=&quot;spacing&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:attribute name=&quot;margin&quot; type=&quot;xs:string&quot; /&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;TabStops&quot;&gt;
                  &lt;xs:sequence&gt;
                          &lt;xs:element name=&quot;tabstop&quot; type=&quot;xs:string&quot; maxOccurs=&quot;unbounded&quot; /&gt;
          &lt;/xs:sequence&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;Layout&quot;&gt;
                  &lt;xs:sequence maxOccurs=&quot;unbounded&quot; &gt;
                          &lt;xs:element name=&quot;property&quot; type=&quot;Property&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
                          &lt;xs:element name=&quot;attribute&quot; type=&quot;Property&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
                          &lt;xs:element name=&quot;item&quot; type=&quot;LayoutItem&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
                  &lt;/xs:sequence&gt;
                  &lt;xs:attribute name=&quot;class&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:attribute name=&quot;name&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:attribute name=&quot;stretch&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:attribute name=&quot;rowstretch&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:attribute name=&quot;columnstretch&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:attribute name=&quot;rowminimumheight&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:attribute name=&quot;columnminimumwidth&quot; type=&quot;xs:string&quot; /&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;LayoutItem&quot;&gt;
                  &lt;xs:choice&gt;
                          &lt;xs:element name=&quot;widget&quot; type=&quot;Widget&quot; /&gt;
                          &lt;xs:element name=&quot;layout&quot; type=&quot;Layout&quot; /&gt;
                          &lt;xs:element name=&quot;spacer&quot; type=&quot;Spacer&quot; /&gt;
                  &lt;/xs:choice&gt;
                  &lt;xs:attribute name=&quot;row&quot; type=&quot;xs:integer&quot; /&gt;
                  &lt;xs:attribute name=&quot;column&quot; type=&quot;xs:integer&quot; /&gt;
                  &lt;xs:attribute name=&quot;rowspan&quot; type=&quot;xs:integer&quot; /&gt;
                  &lt;xs:attribute name=&quot;colspan&quot; type=&quot;xs:integer&quot; /&gt;
                  &lt;xs:attribute name=&quot;alignment&quot; type=&quot;xs:string&quot; /&gt;
          &lt;/xs:complexType&gt;

  &lt;!-- item view begin --&gt;
          &lt;xs:complexType name=&quot;Row&quot;&gt;
              &lt;xs:sequence&gt;
                          &lt;xs:element name=&quot;property&quot; type=&quot;Property&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
          &lt;/xs:sequence&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;Column&quot;&gt;
              &lt;xs:sequence&gt;
                          &lt;xs:element name=&quot;property&quot; type=&quot;Property&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
          &lt;/xs:sequence&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;Item&quot;&gt;
                  &lt;xs:sequence maxOccurs=&quot;unbounded&quot;&gt;
                          &lt;xs:element name=&quot;property&quot; type=&quot;Property&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
                          &lt;xs:element name=&quot;item&quot; type=&quot;Item&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
                  &lt;/xs:sequence&gt;
                  &lt;xs:attribute name=&quot;row&quot; type=&quot;xs:integer&quot; /&gt;
                  &lt;xs:attribute name=&quot;column&quot; type=&quot;xs:integer&quot; /&gt;
          &lt;/xs:complexType&gt;
  &lt;!-- item view end --&gt;

          &lt;xs:complexType name=&quot;Widget&quot;&gt;
              &lt;!-- Order does not matter (cannot use xs:all here
                       because of unbounded row, column, item --&gt;
                  &lt;xs:sequence&gt;
                          &lt;xs:element name=&quot;class&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt; &lt;!-- unbounded kept for compatibility reasons --&gt;
                          &lt;xs:element name=&quot;property&quot; type=&quot;Property&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
                          &lt;xs:element name=&quot;script&quot; use=&quot;deprecated&quot; /&gt;
                          &lt;xs:element name=&quot;widgetdata&quot; use=&quot;deprecated&quot; /&gt;
                          &lt;xs:element name=&quot;attribute&quot; type=&quot;Property&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
  &lt;!-- item view begin --&gt;
                          &lt;xs:element name=&quot;row&quot; type=&quot;Row&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
                          &lt;xs:element name=&quot;column&quot; type=&quot;Column&quot;  minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
                          &lt;xs:element name=&quot;item&quot; type=&quot;Item&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
  &lt;!-- item view end --&gt;
                          &lt;xs:element name=&quot;layout&quot; type=&quot;Layout&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt; &lt;!-- unbounded kept for compatibility reasons --&gt;
                          &lt;xs:element name=&quot;widget&quot; type=&quot;Widget&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
                          &lt;xs:element name=&quot;action&quot; type=&quot;Action&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
                          &lt;xs:element name=&quot;actiongroup&quot; type=&quot;ActionGroup&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
                          &lt;xs:element name=&quot;addaction&quot; type=&quot;ActionRef&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
                          &lt;xs:element name=&quot;zorder&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
                  &lt;/xs:sequence&gt;
                  &lt;xs:attribute name=&quot;class&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:attribute name=&quot;name&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:attribute name=&quot;native&quot; type=&quot;xs:boolean&quot; /&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;Spacer&quot;&gt;
              &lt;xs:sequence&gt;
                          &lt;xs:element name=&quot;property&quot; type=&quot;Property&quot; maxOccurs=&quot;unbounded&quot; /&gt;
          &lt;/xs:sequence&gt;
                  &lt;xs:attribute name=&quot;name&quot; type=&quot;xs:string&quot; /&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;Color&quot;&gt;
                  &lt;xs:all&gt;
                      &lt;xs:element name=&quot;red&quot; type=&quot;xs:integer&quot; /&gt;
                      &lt;xs:element name=&quot;green&quot; type=&quot;xs:integer&quot; /&gt;
                      &lt;xs:element name=&quot;blue&quot; type=&quot;xs:integer&quot; /&gt;
                  &lt;/xs:all&gt;
                  &lt;xs:attribute name=&quot;alpha&quot; type=&quot;xs:integer&quot; /&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;GradientStop&quot;&gt;
              &lt;xs:sequence&gt;
                          &lt;xs:element name=&quot;color&quot; type=&quot;Color&quot; /&gt;
              &lt;/xs:sequence&gt;
                  &lt;xs:attribute name=&quot;position&quot; type=&quot;xs:double&quot; /&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;Gradient&quot;&gt;
              &lt;xs:sequence&gt;
                          &lt;xs:element name=&quot;gradientStop&quot; type=&quot;GradientStop&quot; maxOccurs=&quot;unbounded&quot; /&gt;
              &lt;/xs:sequence&gt;
                  &lt;xs:attribute name=&quot;startx&quot; type=&quot;xs:double&quot; /&gt;
                  &lt;xs:attribute name=&quot;starty&quot; type=&quot;xs:double&quot; /&gt;
                  &lt;xs:attribute name=&quot;endx&quot; type=&quot;xs:double&quot; /&gt;
                  &lt;xs:attribute name=&quot;endy&quot; type=&quot;xs:double&quot; /&gt;
                  &lt;xs:attribute name=&quot;centralx&quot; type=&quot;xs:double&quot; /&gt;
                  &lt;xs:attribute name=&quot;centraly&quot; type=&quot;xs:double&quot; /&gt;
                  &lt;xs:attribute name=&quot;focalx&quot; type=&quot;xs:double&quot; /&gt;
                  &lt;xs:attribute name=&quot;focaly&quot; type=&quot;xs:double&quot; /&gt;
                  &lt;xs:attribute name=&quot;radius&quot; type=&quot;xs:double&quot; /&gt;
                  &lt;xs:attribute name=&quot;angle&quot; type=&quot;xs:double&quot; /&gt;
                  &lt;xs:attribute name=&quot;type&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:attribute name=&quot;spread&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:attribute name=&quot;coordinatemode&quot; type=&quot;xs:string&quot; /&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;Brush&quot;&gt;
                  &lt;xs:choice&gt;
                      &lt;xs:element name=&quot;color&quot; type=&quot;Color&quot; /&gt;
                      &lt;xs:element name=&quot;texture&quot; type=&quot;Property&quot; /&gt;
                      &lt;xs:element name=&quot;gradient&quot; type=&quot;Gradient&quot; /&gt;
                  &lt;/xs:choice&gt;
                  &lt;xs:attribute name=&quot;brushstyle&quot; type=&quot;xs:string&quot; /&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;ColorRole&quot;&gt;
              &lt;xs:sequence&gt;
                          &lt;xs:element name=&quot;brush&quot; type=&quot;Brush&quot; /&gt;
              &lt;/xs:sequence&gt;
                  &lt;xs:attribute name=&quot;role&quot; type=&quot;xs:string&quot; /&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;ColorGroup&quot;&gt;
                  &lt;xs:sequence maxOccurs=&quot;unbounded&quot;&gt;
                          &lt;xs:element name=&quot;colorrole&quot; type=&quot;ColorRole&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
                          &lt;xs:element name=&quot;color&quot; type=&quot;Color&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
                  &lt;/xs:sequence&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;Palette&quot;&gt;
                  &lt;xs:all&gt;
                          &lt;xs:element name=&quot;active&quot; type=&quot;ColorGroup&quot; /&gt;
                          &lt;xs:element name=&quot;inactive&quot; type=&quot;ColorGroup&quot; /&gt;
                          &lt;xs:element name=&quot;disabled&quot; type=&quot;ColorGroup&quot; /&gt;
                  &lt;/xs:all&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;Font&quot;&gt;
                  &lt;xs:all&gt;
                          &lt;xs:element name=&quot;family&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;pointsize&quot; type=&quot;xs:integer&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;weight&quot; type=&quot;xs:integer&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;italic&quot; type=&quot;xs:boolean&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;bold&quot; type=&quot;xs:boolean&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;underline&quot; type=&quot;xs:boolean&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;strikeout&quot; type=&quot;xs:boolean&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;antialiasing&quot; type=&quot;xs:boolean&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;stylestrategy&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;kerning&quot; type=&quot;xs:boolean&quot; minOccurs=&quot;0&quot; /&gt;
                  &lt;/xs:all&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;Point&quot;&gt;
                  &lt;xs:all&gt;
                          &lt;xs:element name=&quot;x&quot; type=&quot;xs:integer&quot; /&gt;
                          &lt;xs:element name=&quot;y&quot; type=&quot;xs:integer&quot; /&gt;
                  &lt;/xs:all&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;Rect&quot;&gt;
                  &lt;xs:all&gt;
                          &lt;xs:element name=&quot;x&quot; type=&quot;xs:integer&quot; /&gt;
                          &lt;xs:element name=&quot;y&quot; type=&quot;xs:integer&quot; /&gt;
                          &lt;xs:element name=&quot;width&quot; type=&quot;xs:integer&quot; /&gt;
                          &lt;xs:element name=&quot;height&quot; type=&quot;xs:integer&quot; /&gt;
                  &lt;/xs:all&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;Locale&quot;&gt;
                  &lt;xs:attribute name=&quot;language&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:attribute name=&quot;country&quot; type=&quot;xs:string&quot; /&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;SizePolicy&quot;&gt;
                  &lt;xs:all&gt;
                          &lt;xs:element name=&quot;hsizetype&quot; type=&quot;xs:integer&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;vsizetype&quot; type=&quot;xs:integer&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;horstretch&quot; type=&quot;xs:integer&quot; /&gt;
                          &lt;xs:element name=&quot;verstretch&quot; type=&quot;xs:integer&quot; /&gt;
                  &lt;/xs:all&gt;
                  &lt;xs:attribute name=&quot;hsizetype&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:attribute name=&quot;vsizetype&quot; type=&quot;xs:string&quot; /&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;Size&quot;&gt;
                  &lt;xs:all&gt;
                          &lt;xs:element name=&quot;width&quot; type=&quot;xs:integer&quot; /&gt;
                          &lt;xs:element name=&quot;height&quot; type=&quot;xs:integer&quot; /&gt;
                  &lt;/xs:all&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;Date&quot;&gt;
                  &lt;xs:all&gt;
                          &lt;xs:element name=&quot;year&quot; type=&quot;xs:integer&quot; /&gt;
                          &lt;xs:element name=&quot;month&quot; type=&quot;xs:integer&quot; /&gt;
                          &lt;xs:element name=&quot;day&quot; type=&quot;xs:integer&quot; /&gt;
                  &lt;/xs:all&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;Time&quot;&gt;
                  &lt;xs:all&gt;
                          &lt;xs:element name=&quot;hour&quot; type=&quot;xs:integer&quot; /&gt;
                          &lt;xs:element name=&quot;minute&quot; type=&quot;xs:integer&quot; /&gt;
                          &lt;xs:element name=&quot;second&quot; type=&quot;xs:integer&quot; /&gt;
                  &lt;/xs:all&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;DateTime&quot;&gt;
                  &lt;xs:all&gt;
                          &lt;xs:element name=&quot;hour&quot; type=&quot;xs:integer&quot; /&gt;
                          &lt;xs:element name=&quot;minute&quot; type=&quot;xs:integer&quot; /&gt;
                          &lt;xs:element name=&quot;second&quot; type=&quot;xs:integer&quot; /&gt;
                          &lt;xs:element name=&quot;year&quot; type=&quot;xs:integer&quot; /&gt;
                          &lt;xs:element name=&quot;month&quot; type=&quot;xs:integer&quot; /&gt;
                          &lt;xs:element name=&quot;day&quot; type=&quot;xs:integer&quot; /&gt;
                  &lt;/xs:all&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;StringList&quot;&gt;
                  &lt;xs:attribute name=&quot;notr&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:attribute name=&quot;comment&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:attribute name=&quot;extracomment&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:attribute name=&quot;id&quot; type=&quot;xs:string&quot; /&gt;
              &lt;xs:sequence&gt;
                          &lt;xs:element name=&quot;string&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
              &lt;/xs:sequence&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;ResourcePixmap&quot; mixed=&quot;true&quot;&gt;
                  &lt;xs:attribute name=&quot;resource&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:attribute name=&quot;alias&quot; type=&quot;xs:string&quot; /&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;ResourceIcon&quot; mixed=&quot;true&quot;&gt;
                  &lt;xs:all&gt;
                          &lt;xs:element name=&quot;normaloff&quot; type=&quot;ResourcePixmap&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;normalon&quot; type=&quot;ResourcePixmap&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;disabledoff&quot; type=&quot;ResourcePixmap&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;disabledon&quot; type=&quot;ResourcePixmap&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;activeoff&quot; type=&quot;ResourcePixmap&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;activeon&quot; type=&quot;ResourcePixmap&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;selectedoff&quot; type=&quot;ResourcePixmap&quot; minOccurs=&quot;0&quot; /&gt;
                          &lt;xs:element name=&quot;selectedon&quot; type=&quot;ResourcePixmap&quot; minOccurs=&quot;0&quot; /&gt;
                  &lt;/xs:all&gt;
                  &lt;xs:attribute name=&quot;theme&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:attribute name=&quot;resource&quot; type=&quot;xs:string&quot; /&gt; &lt;!-- pre 4.4 legacy support --&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;String&quot; mixed=&quot;true&quot;&gt;
                  &lt;xs:attribute name=&quot;notr&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:attribute name=&quot;comment&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:attribute name=&quot;extracomment&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:attribute name=&quot;id&quot; type=&quot;xs:string&quot; /&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;PointF&quot;&gt;
                  &lt;xs:all&gt;
                          &lt;xs:element name=&quot;x&quot; type=&quot;xs:double&quot; /&gt;
                          &lt;xs:element name=&quot;y&quot; type=&quot;xs:double&quot; /&gt;
                  &lt;/xs:all&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;RectF&quot;&gt;
                  &lt;xs:all&gt;
                          &lt;xs:element name=&quot;x&quot; type=&quot;xs:double&quot; /&gt;
                          &lt;xs:element name=&quot;y&quot; type=&quot;xs:double&quot; /&gt;
                          &lt;xs:element name=&quot;width&quot; type=&quot;xs:double&quot; /&gt;
                          &lt;xs:element name=&quot;height&quot; type=&quot;xs:double&quot; /&gt;
                  &lt;/xs:all&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;SizeF&quot;&gt;
                  &lt;xs:all&gt;
                          &lt;xs:element name=&quot;width&quot; type=&quot;xs:double&quot; /&gt;
                          &lt;xs:element name=&quot;height&quot; type=&quot;xs:double&quot; /&gt;
                  &lt;/xs:all&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;Char&quot;&gt;
              &lt;xs:sequence&gt;
                          &lt;xs:element name=&quot;unicode&quot; type=&quot;xs:integer&quot; /&gt;
              &lt;/xs:sequence&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;Url&quot;&gt;
              &lt;xs:sequence&gt;
                          &lt;xs:element name=&quot;string&quot; type=&quot;String&quot; /&gt;
              &lt;/xs:sequence&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;Property&quot;&gt;
                  &lt;xs:choice&gt;
                          &lt;xs:element name=&quot;bool&quot; type=&quot;xs:string&quot; /&gt;
                          &lt;xs:element name=&quot;color&quot; type=&quot;Color&quot; /&gt;
                          &lt;xs:element name=&quot;cstring&quot; type=&quot;xs:string&quot; /&gt;
                          &lt;xs:element name=&quot;cursor&quot; type=&quot;xs:integer&quot; /&gt;
                          &lt;xs:element name=&quot;cursorshape&quot; type=&quot;xs:string&quot; /&gt;
                          &lt;xs:element name=&quot;enum&quot; type=&quot;xs:string&quot; /&gt;
                          &lt;xs:element name=&quot;font&quot; type =&quot;Font&quot; /&gt;
                          &lt;xs:element name=&quot;iconset&quot; type=&quot;ResourceIcon&quot;/&gt;
                          &lt;xs:element name=&quot;pixmap&quot; type=&quot;ResourcePixmap&quot; /&gt;
                          &lt;xs:element name=&quot;palette&quot; type=&quot;Palette&quot; /&gt;
                          &lt;xs:element name=&quot;point&quot; type=&quot;Point&quot; /&gt;
                          &lt;xs:element name=&quot;rect&quot; type=&quot;Rect&quot; /&gt;
                          &lt;xs:element name=&quot;set&quot; type=&quot;xs:string&quot; /&gt;
                          &lt;xs:element name=&quot;locale&quot; type=&quot;Locale&quot; /&gt;
                          &lt;xs:element name=&quot;sizepolicy&quot; type=&quot;SizePolicy&quot; /&gt;
                          &lt;xs:element name=&quot;size&quot; type=&quot;Size&quot; /&gt;
                          &lt;xs:element name=&quot;string&quot; type=&quot;String&quot; /&gt;
                          &lt;xs:element name=&quot;stringlist&quot; type=&quot;StringList&quot; /&gt;
                          &lt;xs:element name=&quot;number&quot; type=&quot;xs:integer&quot; /&gt;
                          &lt;xs:element name=&quot;float&quot; type=&quot;xs:float&quot; /&gt;
                          &lt;xs:element name=&quot;double&quot; type=&quot;xs:double&quot; /&gt;
                          &lt;xs:element name=&quot;date&quot; type=&quot;Date&quot; /&gt;
                          &lt;xs:element name=&quot;time&quot; type=&quot;Time&quot; /&gt;
                          &lt;xs:element name=&quot;datetime&quot; type=&quot;DateTime&quot; /&gt;
                          &lt;xs:element name=&quot;pointf&quot; type=&quot;PointF&quot; /&gt;
                          &lt;xs:element name=&quot;rectf&quot; type=&quot;RectF&quot; /&gt;
                          &lt;xs:element name=&quot;sizef&quot; type=&quot;SizeF&quot; /&gt;
                          &lt;xs:element name=&quot;longlong&quot; type=&quot;xs:long&quot; /&gt;
                          &lt;xs:element name=&quot;char&quot; type=&quot;Char&quot; /&gt;
                          &lt;xs:element name=&quot;url&quot; type=&quot;Url&quot; /&gt;
                          &lt;xs:element name=&quot;uint&quot; type=&quot;xs:unsignedInt&quot; /&gt;
                          &lt;xs:element name=&quot;ulonglong&quot; type=&quot;xs:unsignedLong&quot; /&gt;
                          &lt;xs:element name=&quot;brush&quot; type=&quot;Brush&quot; /&gt;
                  &lt;/xs:choice&gt;
                  &lt;xs:attribute name=&quot;name&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:attribute name=&quot;stdset&quot; type=&quot;xs:integer&quot; /&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;Connections&quot;&gt;
              &lt;xs:sequence&gt;
                          &lt;xs:element name=&quot;connection&quot; type=&quot;Connection&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
              &lt;/xs:sequence&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;Connection&quot;&gt;
              &lt;xs:all&gt;
                  &lt;xs:element name=&quot;sender&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:element name=&quot;signal&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:element name=&quot;receiver&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:element name=&quot;slot&quot; type=&quot;xs:string&quot; /&gt;
                  &lt;xs:element name=&quot;hints&quot; type=&quot;ConnectionHints&quot; minOccurs=&quot;0&quot; /&gt;
              &lt;/xs:all&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;ConnectionHints&quot;&gt;
              &lt;xs:sequence&gt;
                          &lt;xs:element name=&quot;hint&quot; type=&quot;ConnectionHint&quot; maxOccurs=&quot;unbounded&quot; /&gt;
                 &lt;/xs:sequence&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;ConnectionHint&quot;&gt;
              &lt;xs:all&gt;
                  &lt;xs:element name=&quot;x&quot; type=&quot;xs:integer&quot;/&gt;
                  &lt;xs:element name=&quot;y&quot; type=&quot;xs:integer&quot;/&gt;
              &lt;/xs:all&gt;
              &lt;xs:attribute name=&quot;type&quot; type=&quot;xs:string&quot; /&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;DesignerData&quot;&gt;
              &lt;xs:sequence&gt;
                  &lt;xs:element name=&quot;property&quot; type=&quot;Property&quot; maxOccurs=&quot;unbounded&quot; /&gt;
          &lt;/xs:sequence&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;Slots&quot;&gt;
              &lt;xs:sequence maxOccurs=&quot;unbounded&quot;&gt;
                  &lt;xs:element name=&quot;signal&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
                  &lt;xs:element name=&quot;slot&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
              &lt;/xs:sequence&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;PropertySpecifications&quot;&gt;
              &lt;xs:sequence maxOccurs=&quot;unbounded&quot;&gt;
                 &lt;xs:element name=&quot;tooltip&quot; type=&quot;PropertyToolTip&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
                 &lt;xs:element name=&quot;stringpropertyspecification&quot; type=&quot;StringPropertySpecification&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; /&gt;
              &lt;/xs:sequence&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;PropertyToolTip&quot;&gt;
              &lt;xs:attribute name=&quot;name&quot; type=&quot;xs:string&quot; /&gt;
          &lt;/xs:complexType&gt;

          &lt;xs:complexType name=&quot;StringPropertySpecification&quot;&gt;
              &lt;xs:attribute name=&quot;name&quot; type=&quot;xs:string&quot; /&gt;
              &lt;xs:attribute name=&quot;type&quot; type=&quot;xs:string&quot; /&gt;
              &lt;xs:attribute name=&quot;notr&quot; type=&quot;xs:string&quot; /&gt;
          &lt;/xs:complexType&gt;

  &lt;/xs:schema&gt;

</pre>
</div>
<!-- @@@designer-ui-file-format.html -->
<p class="naviNextPrevious footerNavi">
<a class="prevPage" href="designer-creating-custom-widgets-extensions.html">创建自定义小部件(Widget)扩展</a>
</p>
        </div>
       </div>
   </div>
   </div>
</div>
<div class="footer">
   <p>
   <acronym title="Copyright">&copy;</acronym> 2020 The Qt Company Ltd.
   Documentation contributions included herein are the copyrights of
   their respective owners.<br/>    The documentation provided herein is licensed under the terms of the    <a href="http://www.gnu.org/licenses/fdl.html">GNU Free Documentation    License version 1.3</a> as published by the Free Software Foundation.<br/>    Qt and respective logos are trademarks of The Qt Company Ltd.     in Finland and/or other countries worldwide. All other trademarks are property
   of their respective owners. </p>
</div>
</body>
</html>
